package com.gk.panda.apis.mapper;

import com.gk.panda.apis.entity.DataVisualization.bo.BiodiversityCountByTypeBo;
import com.gk.panda.apis.entity.DataVisualization.bo.PatrolIncidentsCountBo;
import com.gk.panda.apis.entity.DataVisualization.vo.DataCountByYear;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassName: DataVisualizationMapper
 * @Description: 数据可视化部分数据统计
 * @author: Sir.yang
 * @date: 2022/11/11 15:44
 * @version: 1.0
 **/
@Mapper
public interface DataVisualizationMapper {

    /**
     * @description: 动植物数据统计
     * @param: [puisneOrgIds]
     * @return: java.util.List<com.gk.panda.apis.entity.DataVisualization.bo.BiodiversityCountByTypeBo>
     * @date: 2022/11/11 16:35
     * @version: 1.0
     **/
    List<BiodiversityCountByTypeBo> getCountByOrgId(@Param("orgIds") List<Integer> puisneOrgIds,@Param("type") Integer type);

    /**
     * @description: 巡护里程数据统计
     * @param: [orgIds]
     * @return: java.util.List<com.gk.panda.apis.entity.DataVisualization.vo.DataCountByYear>
     * @date: 2022/11/12 14:50
     * @version: 1.0
     **/
    List<DataCountByYear> getPatrolMileageCount(@Param("orgIds") List<Integer> orgIds);


    /**
     * @description: 巡护事件数据统计
     * @param: [orgIds]
     * @return: com.gk.panda.apis.entity.DataVisualization.vo.PatrolIncidentsCountVo
     * @date: 2022/11/12 10:11
     * @version: 1.0
     **/
    List<PatrolIncidentsCountBo> getPatrolIncidentsCount(@Param("orgIds") List<Integer> orgIds);

    Integer getBioCountByOrgId(@Param("orgIds") List<Integer> puisneOrgIds, @Param("kingdom") int kingdom);
}
